/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package CONTABILIDAD_MODELO;

import Conexion.Conexion;
import java.sql.ResultSet;
import java.sql.SQLException;

/**
 *
 * @author equipo_4
 */
public class CON_APERTURA_ANO_FISCAL 
{    
    public static Double CantidadActivo(Conexion con, int ano) throws SQLException
    {
        String consulta1 = "SELECT to_char(lpad(cc.CODIGO,1)) as num FROM BROKER.CON_CUENTA_CONTABLE cc WHERE (cc.DESCRIPCION = 'ACTIVO')  AND CODIGO_NIVEL_CUENTA = 1";
        ResultSet rss = con.EjecutarConsulta(consulta1);
        rss.next();
        String numero = rss.getString("num");            
        
        String consulta = "SELECT SUM (CON_CIERRE.DEBE_TC) as DEBE_TC, SUM (CON_CIERRE.HABER_TC) AS HABER_TC FROM BROKER.CON_CIERRE, BROKER.CON_CUENTA_CONTABLE, BROKER.CON_FECHA_CIERRE WHERE     (CON_CIERRE.ID_CUENTA_CONTABLE = CON_CUENTA_CONTABLE.ID) AND (CON_CIERRE.ID_FECHA_CIERRE = CON_FECHA_CIERRE.ID) AND (CON_FECHA_CIERRE.ANO = "+ano+")AND (CON_CUENTA_CONTABLE.CODIGO LIKE '"+numero+"%')GROUP BY CON_FECHA_CIERRE.ANO";
        ResultSet rs = con.EjecutarConsulta(consulta);
        Double debe=0.0;
        Double haber=0.0;
        if(rs.next())
        {
        debe = rs.getDouble("DEBE_TC");
        haber = rs.getDouble("HABER_TC");
        }
        return haber-debe;        
    }
        
    public static Double CantidadIngresos(Conexion con, int ano) throws SQLException
    {
        String consulta1 = "SELECT to_char(lpad(cc.CODIGO,1)) as num FROM BROKER.CON_CUENTA_CONTABLE cc WHERE (cc.DESCRIPCION = 'INGRESOS')  AND CODIGO_NIVEL_CUENTA = 1";
        ResultSet rss = con.EjecutarConsulta(consulta1);
        rss.next();
        String numero = rss.getString("num");            
        
        String consulta = "SELECT SUM (CON_CIERRE.DEBE_TC) as DEBE_TC, SUM (CON_CIERRE.HABER_TC) AS HABER_TC FROM BROKER.CON_CIERRE, BROKER.CON_CUENTA_CONTABLE, BROKER.CON_FECHA_CIERRE WHERE     (CON_CIERRE.ID_CUENTA_CONTABLE = CON_CUENTA_CONTABLE.ID) AND (CON_CIERRE.ID_FECHA_CIERRE = CON_FECHA_CIERRE.ID) AND (CON_FECHA_CIERRE.ANO = "+ano+")AND (CON_CUENTA_CONTABLE.CODIGO LIKE '"+numero+"%')GROUP BY CON_FECHA_CIERRE.ANO";
        ResultSet rs = con.EjecutarConsulta(consulta);
        Double debe = 0.0;
        Double haber = 0.0;
        if(rs.next())
        {
            debe = rs.getDouble("DEBE_TC");
            haber = rs.getDouble("HABER_TC");
        }
        
        return haber-debe;        
    }
    public static Double CantidadEgresos(Conexion con, int ano) throws SQLException
    {
        String consulta1 = "SELECT to_char(lpad(cc.CODIGO,1)) as num FROM BROKER.CON_CUENTA_CONTABLE cc WHERE (cc.DESCRIPCION = 'EGRESOS')  AND CODIGO_NIVEL_CUENTA = 1";
        ResultSet rss = con.EjecutarConsulta(consulta1);
        rss.next();
        String numero = rss.getString("num");            
        
        String consulta = "SELECT SUM (CON_CIERRE.DEBE_TC) as DEBE_TC, SUM (CON_CIERRE.HABER_TC) AS HABER_TC FROM BROKER.CON_CIERRE, BROKER.CON_CUENTA_CONTABLE, BROKER.CON_FECHA_CIERRE WHERE     (CON_CIERRE.ID_CUENTA_CONTABLE = CON_CUENTA_CONTABLE.ID) AND (CON_CIERRE.ID_FECHA_CIERRE = CON_FECHA_CIERRE.ID) AND (CON_FECHA_CIERRE.ANO = "+ano+")AND (CON_CUENTA_CONTABLE.CODIGO LIKE '"+numero+"%')GROUP BY CON_FECHA_CIERRE.ANO";
        ResultSet rs = con.EjecutarConsulta(consulta);
        Double debe = 0.0;
        Double haber = 0.0;
        if(rs.next())
        {
            debe = rs.getDouble("DEBE_TC");
            haber = rs.getDouble("HABER_TC");
        }
        
        return haber-debe;        
    }
    
    public static Double CantidadPasivo(Conexion con, int ano) throws SQLException
    {
        String consulta1 = "SELECT to_char(lpad(cc.CODIGO,1)) as num FROM BROKER.CON_CUENTA_CONTABLE cc WHERE (cc.DESCRIPCION = 'PASIVO') AND CODIGO_NIVEL_CUENTA = 1 ";
        ResultSet rss = con.EjecutarConsulta(consulta1);
        rss.next();
        String numero = rss.getString("num");            
        
        String consulta = "SELECT SUM (CON_CIERRE.DEBE_TC) as DEBE_TC, SUM (CON_CIERRE.HABER_TC) AS HABER_TC FROM BROKER.CON_CIERRE, BROKER.CON_CUENTA_CONTABLE, BROKER.CON_FECHA_CIERRE WHERE     (CON_CIERRE.ID_CUENTA_CONTABLE = CON_CUENTA_CONTABLE.ID) AND (CON_CIERRE.ID_FECHA_CIERRE = CON_FECHA_CIERRE.ID) AND (CON_FECHA_CIERRE.ANO = "+ano+")AND (CON_CUENTA_CONTABLE.CODIGO LIKE '"+numero+"%')GROUP BY CON_FECHA_CIERRE.ANO";
        ResultSet rs = con.EjecutarConsulta(consulta);
        Double debe = 0.0;
        Double haber = 0.0;
        if(rs.next())
        {
            debe = rs.getDouble("DEBE_TC");
            haber = rs.getDouble("HABER_TC");
        }
        
        return haber-debe;
    }
    
    
}
